/* ========================================================================= */
/* ------------------------------------------------------------------------- */
/*!
  \file			mdicontainer.h
  \date			Dec 2012
  \author		TNick

  \brief		Contains the definition for MdiContainer class


*//*


 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 Please read COPYING and README files in root folder
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*/
/* ------------------------------------------------------------------------- */
/* ========================================================================= */
#ifndef __MDICONTAINER_INC__
#define __MDICONTAINER_INC__
//
//
//
//
/*  INCLUDES    ------------------------------------------------------------ */

#include	<memtrack.h>
#include	<QMdiSubWindow>

/*  INCLUDES    ============================================================ */
//
//
//
//
/*  CLASS    --------------------------------------------------------------- */

class	MdiImpl;
class	EditorBase;

/**
*	@brief
*/
class MdiContainer			: public QMdiSubWindow, public MemTrack		{
	BBM_TRACK( MdiContainer )

	//
	//
	//
	//
	/*  DEFINITIONS    ----------------------------------------------------- */

	/*  DEFINITIONS    ===================================================== */
	//
	//
	//
	//
	/*  DATA    ------------------------------------------------------------ */

private:


	/**
	*	@brief	associated MdiImpl
	*/
	MdiImpl *			mdi_;


	/**
	*	@brief	associated editor
	*/
	EditorBase *		editor_;


	/*  DATA    ============================================================ */
	//
	//
	//
	//
	/*  FUNCTIONS    ------------------------------------------------------- */

public:


	/**
	*	@brief	constructor;
	*/
	MdiContainer			( MdiImpl * mdi, QWidget * parent = NULL );


	/**
	*	@brief	destructor;
	*/
	virtual				~MdiContainer		( void );


	/**
	*	@brief	traping this to send events
	*/
	void				closeEvent			( QCloseEvent * closeEvent );


	/**
	*	@brief	change editor inside
	*/
	void				setEditor			( EditorBase * ed );


	/**
	*	@brief	editor inside
	*/
	EditorBase *		editor				( void )
	{ return editor_; }


	/**
	*	@brief	editor inside
	*/
	QWidget*			editorWidget		( void )
	{ return widget(); }



	/*  FUNCTIONS    ======================================================= */
	//
	//
	//
	//

};	/*	class MdiContainer	*/

/*  CLASS    =============================================================== */
//
//
//
//
#endif // __MDICONTAINER_INC__
/* ------------------------------------------------------------------------- */
/* ========================================================================= */
